15. Lesson Conclusion

Lesson Conclusion

ND079 JPND C3 L1 A11 Lesson Conclusion V3

Glossary

**APK: **An Android package file, containing all the files needed to install an Android application.

Assembly Language: A language specific to a particular hardware device, with commands that map to the capabilities of that device.

Binary: The zeros and ones of a program that hardware can actually read.

Bytecode: An intermediate language that the JVM can understand. Java programs compile into Bytecode.

**Hotspot JVM: **The version of the JVM able to implement JIT and Tiered compilation.

**JAR: **A standard Java Archive file, containing class files and a manifest.

**JShell: **A REPL that can run Java commands.

**JIT Compilation: **Delaying compilation of bytecode until its needed by the JVM.

JVM: Java Virtual Machine, a virtual machine that acts as an interface to an operating system. The input to the JVM is Java Bytecode, and the output from the JVM will vary depending on which operating system it is written for.

**LTS: **Long-term support. A version of Java designated to continue receiving patches and support for 3 years. Current LTS is version 11. Next LTS will be Java 17.

**Interpreter (Bytecode): **A program that executes bytecode commands one after another. Used by early versions of Java.

**REPL: **Read-Eval-Print Loop. A command-line interpreter.

**Tiered Compilation: **A system by which one compiler is used to compile bytecode into machine code quickly and another compiler continues to update the compiled bytecode based on the program execution.

Virtual Machine: a software application that emulates the inputs and outputs of another device.

**WAR: **A Java Web Archive file, containing all the files needed to run a Java web application on an application server.